The present invention generally relates to the field of search engines and more particularly to self-improving phonetic search engines for use in databases, web browsers and the like.
Conventional search engines (or browsers) that perform searches on the web, whether they be search engines within a company website helping clients look for products and services, database searches within call centers, or general search engines for the world wide web (Internet), generally perform the search task using a text matching process. Users enter keywords within designated search fields and the text matching process begins.
This process is generally not the most accurate or convenient way to search for data, partially because the user may make spelling mistakes while typing in the search field, or s/he may not know the precise spelling of a proper noun that may have various different spelling formats (i.e. “Fich” and “Fish” both pronounced “Fish” or “Jo” and “Joe”). This results in frustration as the user may not be referred to the site/information that s/he intended and s/he must then restart the search attempting a different spelling or set of words.
As an illustrative example, typically in website searching, the user may enter a search string which is then compared with the database of registered URLs. If an accurate match is found, the user is directed to the respective website associated with the registered URL. If no accurate match is found, the web-browser typically returns an error message indicating that no match has been found, whereby the user must then reenter a different search string by experimenting with various spelling combinations.
Phonetic string matching has been developed in the past to address the problem of spelling in search queries. However, current systems codify both the primary database and the search string to attempt to match the two when the text-based search does not reveal any results. The problem with this approach is that it assumes the primary database to not change constantly, and if changed, to do so with aid of a coding agent that would include application specific phonetic tags onto primary records to be used for future queries within a closed database system. When the primary database becomes as large and open as the world wide web with constantly changing data and no universal application to tag all primary records for an application-specific phonetic matching process, then there arises a need to address potential misspellings in search queries in a more efficient manner.
Some technologies have recently been introduced that utilize matched and un-matched terms within a search string that consists of more than one word to correct the spelling of the un-matched term and help direct a user automatically to what s/he may have been looking for (please see referenced U.S. Pat. No. 6,144,958). However, these technologies are not helpful when the un-matched term is only one word.
Accordingly, there is a need for improving the current methodologies employed in search engines.